
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;

/**
 *
 * Beschreibung
 *
 * @version 1.0 vom 25.04.2015
 * @author 
 */

public class Fenster extends JFrame {
    // Anfang Attribute
    private JButton knopf1 = new JButton();
    private ZeichenPanel zeichenflaeche = new ZeichenPanel(null, true);
    // Ende Attribute

    public Fenster(String title) { 
        // Frame-Initialisierung
        super(title);
        setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
        int frameWidth = 723; 
        int frameHeight = 508;
        setSize(frameWidth, frameHeight);
        Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
        int x = (d.width - getSize().width) / 2;
        int y = (d.height - getSize().height) / 2;
        setLocation(x, y);
        setResizable(true);
        Container cp = getContentPane();
        cp.setLayout(null);
        // Anfang Komponenten

        knopf1.setBounds(616, 16, 75, 25);
        knopf1.setText("knopf1");
        knopf1.setMargin(new Insets(2, 2, 2, 2));
        knopf1.addActionListener(new ActionListener() { 
                public void actionPerformed(ActionEvent evt) { 
                    knopf1_ActionPerformed(evt);
                }
            });
        cp.add(knopf1); 
        zeichenflaeche.setBounds(24, 16, 561, 425);
        zeichenflaeche.setOpaque(true);
        zeichenflaeche.setBackground(Color.pink);
        cp.add(zeichenflaeche);
        // Ende Komponenten

        setVisible(true);

    
    } // end of public Fenster
    // Anfang Methoden
    public void knopf1_ActionPerformed(ActionEvent evt) {
        // TODO hier Quelltext einfügen
    } // end of knopf1_ActionPerformed

    // Ende Methoden
    
    
    
    
    
    //Die folgenden zwei Methoden muessen in Ihrer JFrame-Unterklasse ergaenzt werden!
    void vorbereiten() {
        //Tastaturabfrage hinzufuegen
        KeyboardConnection key = new KeyboardConnection(this);
        zeichenflaeche.requestFocus(); //noetig, weil zumindest 1 Element den Focus braucht, damit KeyListener anschlaegt (und das nicht im Konstruktor)
        //Bilder vorbereiten, incl tile-Breite und tile-Hoehe
        zeichenflaeche.bilderInitialisieren(64, 64);
        repaint();                     
    }    

    void setzeBildAnPosition(int x, int y, String bildname) {
        zeichenflaeche.setzeBildAnPosition(x,y,bildname);
        repaint();
    }
    
    


} // end of class loeschen
